Thumbnail zoom

ABSTRACT

File exploration is facilitated by enabling zoom with respect to a thumbnail as a function of an identified point of interest. More particularly, a scaled thumbnail of the same size as a thumbnail can be presented as a function of an identified point of interest. Furthermore, navigation, among other things, is enabled to allow panning with respect to a scaled thumbnail, for instance.

BACKGROUND

A variety of techniques has been developed to aid users in exploringvast quantities of digital content (e.g., data, information). Forexample, file systems organize collections of content in files withdescriptive names and directories (a.k.a., folders) that allow groupingof related content. Further, metadata, descriptive of content, can bemaintained to facilitate location of particular files. For example,content author, date of creation, location, and/or keywords can beassociated with a file to make such content searchable. Further yet,thumbnails, or small visual depictions of content, can be employed toenable information to be gleaned about file content by way of quickvisual inspection and without opening the file.

SUMMARY

The following presents a simplified summary in order to provide a basicunderstanding of some aspects of the disclosed subject matter. Thissummary is not an extensive overview. It is not intended to identifykey/critical elements or to delineate the scope of the claimed subjectmatter. Its sole purpose is to present some concepts in a simplifiedform as a prelude to the more detailed description that is presentedlater.

Briefly described, the subject disclosure generally pertains tothumbnail zoom. A dynamic thumbnail is provided, which allows, amongother things, zooming with respect to file content represented by thethumbnail. Consequently, specific information can be acquired about afile to aid understanding of content and differentiation of similarfiles without expending time and resources associated with opening afile. In accordance with one aspect, a thumbnail interface enableszooming and navigation of file content within the thumbnail rather thanan enlarged view, and zooming is performed as a function of anidentified point of interest.

To the accomplishment of the foregoing and related ends, certainillustrative aspects of the claimed subject matter are described hereinin connection with the following description and the annexed drawings.These aspects are indicative of various ways in which the subject mattermay be practiced, all of which are intended to be within the scope ofthe claimed subject matter. Other advantages and novel features maybecome apparent from the following detailed description when consideredin conjunction with the drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of thumbnail interface system.

FIGS. 2A-D illustrate exemplary results of zooming and navigating withrespect to a thumbnail.

FIG. 3 is a block diagram of one particular implementation of thethumbnail interface system.

FIGS. 4A-D are illustrations of exemplary zoom and navigationfunctionality.

FIG. 5 is a block diagram of an extended thumbnail-interface system.

FIG. 6 is a flow chart diagram of a method of facilitating fileexploration.

FIG. 7 is a flow chart diagram of a method of thumbnail zooming.

FIG. 8 is a flow chart diagram of a method of data modification.

FIG. 9 is a schematic block diagram illustrating a suitable operatingenvironment for aspects of the subject disclosure.

DETAILED DESCRIPTION

A thumbnail is a small visual representation of a file (e.g., collectionof data, program . . . ) that is presented to a user in a file browsinginterface or the like. Multiple thumbnails are typically displayed on ascreen to allow users to preview content of multiple files with a quickvisual inspection, and without opening the files. While generallybeneficial, the diminutive nature of thumbnails can be problematic forparticular files such as those including complex or substantiallysimilar content. In these situations, it is conventionally necessary toopen such files to understand and differentiate file content.

Details below are generally directed toward thumbnail zoom. Fileexploration is facilitated by replacing a thumbnail with a scaledthumbnail of the same size thereby allowing a user to better understandthe contents of a file without opening the file. The scaled thumbnailcan be produced as a function of a specified point of interest withrespect to the thumbnail. By way of example, upon positioning a pointerover a thumbnail, a zoomed-in version of the thumbnail can be presentedbased on the position of the pointer. Stated differently, a dynamicthumbnail is provided with a navigable and scalable interface. Amongother things, file content interaction can also be enabled that allowschanges to content to be made by way of a scaled thumbnail.

Various aspects of the subject disclosure are now described in moredetail with reference to the annexed drawings, wherein like numeralsrefer to like or corresponding elements throughout. It should beunderstood, however, that the drawings and detailed description relatingthereto are not intended to limit the claimed subject matter to theparticular form disclosed. Rather, the intention is to cover allmodifications, equivalents, and alternatives falling within the spiritand scope of the claimed subject matter.

Referring initially to FIG. 1, a thumbnail interface system 100 isillustrated that facilitates file exploration. The system 100 includeszoom component 110 and a navigation component 120 to enable both zoomingand navigation with respect to a thumbnail 102. Such actions can be intriggered in response to user interaction, or input, regarding thethumbnail 102, wherein the system 100 can support to substantially anytype of user input (e.g., speech, gaze . . . ) and manner of acquiringinput (e.g., mouse, trackball, keyboard, touch screen, microphone,camera . . . ).

The thumbnail 102 is a visual representation of a file and as such cancorrespond to graphic object of a particular size. Typically, thegraphic object is an image but not limited thereto, as it could alsocorrespond to an animation or a video, among other things. For purposesof clarity, and not limitation, detailed description of disclosedaspects is described with respect to an image or simply a thumbnail.

The zoom component 110 is configured to produce a scaled image (e.g.,magnified) that can replace a previous image, such as an un-scaled,default image, in response to a trigger, such as a hovering pointer.Furthermore, the scaled image can be of the same size as the un-scaledimage. Stated differently, a thumbnail can be replaced with a scaledversion of the thumbnail of same size. In accordance with oneembodiment, the zoom component 110 can scale a thumbnail in accordancewith a predefined path, for instance toward a predetermined focal point.

The navigation component 120 is configured to receive position data as aresult of interaction with the thumbnail and produce a scaled graphicobject as function of the position data, which can subsequently bepresented to a user. In accordance with one aspect, position data can beutilized to guide zooming, rather than a more simplistic approach ofpresenting a set of one or more predetermined scaled graphic objects,for instance. By way of example, and not limitation, the zoom component110 can produce an enlarged version of thumbnail based the position of apointer or cursor within the thumbnail. Accordingly, if a pointer islocated in the top left corner of the thumbnail, the top left portion ofthe thumbnail can be enlarged.

In accordance with another aspect, the position data can be utilized tonavigate a scaled thumbnail, or in other words perform panning Forexample, position data can indicate a desire to view what is to theright of a current enlarged image, and as such, a new imagerepresentative of that position can be produced. Furthermore, it shouldbe appreciated the position data can represent not only direction (e.g.,left, right, up, down) but also magnitude of direction. In this manner,the data can specify whether to pan slightly to the right or to theright-most boundary, for instance. Such position data can correspond tomovements and magnitudes of movements captured with respect to a scaledversion of a thumbnail acquired for instance by way of a finger swipe ormovement of a pointer in a particular direction.

Turning attention to FIGS. 2A-D, a number of thumbnails are shown thatillustrate the result of zooming and navigation to facilitate clarityand understanding regarding aspects of the subject disclosure. Thesethumbnails are solely examples, however, and are not meant to limit thescope of the claimed subject matter.

FIG. 2A illustrates a default thumbnail corresponding to a complexreport file with a number of charts and graphs, among other things.Opening such a report can involve an investment of time by a user andresources to view the contents of the report, so the default thumbnailprovides a type preview of a file, or more specifically, file content.However, due to the diminutive nature of the thumbnail little more canbe gleaned from this thumbnail other than that fact that the file is areport. Further, amongst other similar reports this thumbnail may notprovide sufficient information to enable file content to bedistinguished from other file content.

FIG. 2B illustrates a scaled thumbnail of the same size as the defaultthumbnail of FIG. 2A. The scaled thumbnail of FIG. 2B results uponpositioning of pointer 200, for example utilizing a mouse, over thedefault thumbnail of FIG. 2A. More specifically, since the pointer islocated in the top left corner, the top-left corner of the defaultthumbnail is magnified allowing a user to view further detail.

FIG. 2C depicts another scaled thumbnail, which is the result ofmovement of the pointer 200 from the top left corner to the top rightcorner with respect to the scaled thumbnail as provided in FIG. 2B.Alternatively, the same scaled thumbnail can be produced as a result ofa targeted zoom, if the pointer was originally positioned at the topright as opposed to the top left with respect to the default thumbnailof FIG. 2A.

FIG. 2D shows yet another scaled thumbnail. Here, the scaled thumbnailcan be produced as a result of moving the pointer down from the positionprovided in FIG. 2B or down and to the left from the positionillustrated in FIG. 2C. Otherwise, the scaled thumbnail of FIG. 2D canbe produced as a result of a targeted zoom by originally positioning thepointer 200 in the bottom left corner of the default thumbnail of FIG.2A.

Returning to FIG. 1, the zoom component 110 and navigation component 120can operate with respect to multiple levels of zoom rather than a singlelevel of zoom as provided in FIGS. 2A-D. In other words, thumbnails canbe produced across several levels of granularity. As a result, the zoomcomponent 110 can be configured to incrementally scale a thumbnail toallow drill down to further detail or vice versa. Further, zoom can bedirectional based on an identified point of interest. By way of example,and not limitation, zooming can follow a user's mouse path to allow theuser to better understand file content and facilitate file exploration.

In accordance with one aspect, a user can explicitly specify a zoom, forinstance, by using a mouse scroll wheel to zoom in and out.Alternatively, the zoom can be performed automatically. In accordancewith one embodiment, automatic zoom can be performed as a function oftime, such as the time over which a pointer hovers over a particulararea, for instance. Furthermore, the automatic zoom can seek to imitatea user comprehension pattern and generally achieve a pleasant effect. Infurtherance thereof, zoom can be performed at different rates. Forexample, if a default thumbnail displays 100% of an image and a user canonly read something at 50%, the automatic zoom can performed fast from100% to 50% but slower from 50% to 10%. By scaling from 100% to 50%relatively fast, the scope is still large enough to provide a fairamount of context. As the thumbnail is continually magnified, thescaling rate can be slower to allow a user to read content and enableaccurate movement/navigation since navigation becomes increasingsensitive with magnification. Further, the scaling rate can decrease asa function of scale such that zoom is performed continuously slower.Still further yet, a user can explicitly pause and restart automaticzoom to allow further time to analyze content, for example by pressing akey on a keyboard or clicking an otherwise unassigned mouse button.

FIG. 3 depicts a thumbnail interface system 300 in accordance with oneparticular implementation that combines zoom and navigationfunctionality described with respect to zoom component 110 andnavigation component 120 of system 100 of FIG. 1. Of course, this issolely one particular implementation. Other implementations are possibleand will be apparent those of skill in the art upon reading thisdetailed description. As shown, system 300 includes image generationcomponent 310, clipping component 320, scale component 330, and positioncomponent 340.

The image generation component 310 generates or otherwise acquires animage that represents file content. Generally, the image can be oflarger size than a conventional thumbnail. In accordance with oneembodiment, the image generation component 310 can be configured to opena file and capture a screen shot of the opened file periodically (e.g.,daily, weekly, monthly . . . ) or upon change. Of course, various othermechanisms can be utilized to achieve the same result. For example, aprogram can maintain and make such an image available to the imagegeneration component 310. Alternatively, the default thumbnail can beemployed, if it is of a sufficiently high resolution to enable scaling.

The clipping component 320 is configured to generate a clipping mask(a.k.a. clipping window) of the same size as a thumbnail. Any portioninside the clipping mask is maintained while any portion outside theclipping mask is removed, or in other words clipped. Any conventional ornovel clipping algorithm can be employed by the clipping component 320for this purpose. As will be described further below, the generatedclipping mask can be employed over the image provided, or madeavailable, by the image generation component 310 to produce one or moreimages that can replace a default thumbnail.

The scale component 330 is configured to alter the size, or scale, ofthe image provided, or made available, by the image generation component310. The scale component 330 thus enables zooming with respect to theclipping mask. As the size of the image increases with respect to afixed-size clipping mask, zoom-in functionality results. By contrast, asthe image size decreases with respect to a fixed-size clipping mask, theresult is zoom-out functionality. Conceptually, this can be thought ofas moving an image closer behind the clipping mask (zoom in) or movingthe image farther away behind the clipping mask (zoom out).

The position component 340 is configured to position the generated imagebehind the clipping mask to enable image panning (e.g., up, down, right,left). Since the image is being moved rather than the clipping mask,movements are opposite a specified direction with respect to athumbnail. For example, to pan right, the image is moved left, and topan down the image is moved up. In sum, a large image can be positionedwith respect to a small window.

While use of clipping masks is well known, the manner of use here isnot. Conventionally, clipping masks are changed while an image remainsstatic. Here, the clipping mask is static and the image changes. Morespecifically, a clipping mask size is typically modified to effectscaling and positioned at a particular location over an image. Bycontrast, the system 100 scales the image and positions the imagerelative to the fixed-size clipping mask.

FIGS. 4A-D illustrate exemplary behavior of the thumbnail interfacesystem 300 described with respect to FIG. 3. FIG. 4A illustrates adefault thumbnail where the pointer 200 is not hovering over thethumbnail. When the pointer 200 is positioned over the thumbnail, asdepicted in FIG. 4B, the thumbnail of FIG. 4A is replaced by a clippingmask 400 over a thumbnail image enlarged by a scaling factor “S” andpositioned inversely to the pointer location over the clipping maskconfigured to match the size of the default thumbnail. In accordancewith one aspect, after a period of time “t,” the image is againautomatically enlarged by a scaling factor “S” and repositionedinversely to the pointer location over the clipping mask 400 adjustedfor the size of the image as shown in FIG. 4C. Once the thumbnail imageis scaled to a predetermined maximum ratio, scaling stops but the imagecan be repositioned after each “t” amount of time as illustrated by FIG.4D.

In accordance with one implementation, the following algorithm can beutilized to compute the scale and position of an image behind theclipping mask. Here, the tuple “Xp,Yp” is the current position of thepointer, “t” number of “ticks” (measurement of time) the pointer hasbeen hovering over the thumbnail, “S” is the scaling factor (e.g.,amount of zoom each tick), “Iw” and “Ih” are the original un-scaledimage width and height, “Sw” and “Sh” are the scaled image width andheight, and “Tw” and “Th” are the thumbnail width and height. The scaledimage dimensions can be computed as:

Sw=lessor of (Tw*S*t) or (Iw)

Sh=lessor of (Th*S*t) or (Ih)

The image location can be computed as:

Image leftmost location (x)=−(Xp/Tw)*Sw+Sw/2

Image topmost location (y)=−(Yp/Th)*Sh+Sh/2

The speed of the zoom can be controlled by increasing or decreasing theamount of time for each tick “t.” The smoothness of the zoom can becontrolled by increasing or decreasing the scaling factor “S.” Thedirection of the zoom (from zoom-in to zoom-out) can be controlled bychanging the scaling factor to reduce the size of “Sw” and “Sh” up to aminimum size “Tw, Th.” A zoom-out implementation can prioritize “(x, y)”to begin so that an “important” element of the file (a.k.a. focal point)was in the visual field of the thumbnail. This can be achieved byproviding prioritized initial “(x,y)” coordinates for the thumbnail.

Turning attention to FIG. 5, the thumbnail interface system 500 isillustrated with extended functionality. As previously described withrespect to system 100 of FIG.1, system 500 includes the zoom component110 and the navigation component 120 to enable interaction with respectto the thumbnail 102. Additionally, the thumbnail interface system 100includes modification component 530, initiation component 540, and focalpoint component 550. The modification component 530 is configured toaccepted alterations with respect to a thumbnail that are then made inthe file corresponding to the thumbnail. For example, the modificationcomponent 530 can allow a portion of the thumbnail to be highlighted.Subsequently, changes can be initiated to the file represented by thethumbnail to include the highlighted portion. Similarly, text or numberscan be entered with respect to the thumbnail, which can then initiatechanges to the underlying file represented by the thumbnail. Althoughnot limited thereto, the modification component 530 can be configured torecord modifications with respect to a scaled thumbnail, identify themodifications, and cause the identified modifications to be made to thefile.

Initiation component 540 can be configured to alter the manner in whicha file is opened as a function of thumbnail interaction. By way ofexample, and not limitation, information regarding the thumbnail imagepresented at the time a file is to be opened can be passed to anassociated program opening the file to allow the program to open thefile with the same or similar view as provided by the thumbnail. Inother words, if a user zooms in on a point of interest by way of athumbnail, the same view can be presented to the user upon opening thefile (e.g., double click on thumbnail).

Focal point component 550 can be configured to affect, or influence,thumbnail zooming and navigation based on a pre-determined focal pointof a thumbnail. For example, a force function can be applied to pullimage positioning toward the focal point. In this manner, the focalpoint provides a sort of gravitational pull to any identified point ofinterest. A myriad of techniques can be employed by which the focalpoint component 550 can determine the focal point ranging from quitesimplistic to very complex. For example, for images the focal point canbe the center of a person's face. In this case, as incremental zoomingis performed, the zoom can be pulled toward the center of the person'sface. In another instance, statistical analysis can be performed basedon historical positioning information of a particular user or group ofusers. In this scenario, a sort of zoom-as-you-have-zoomed-before orzoom-as-others-have-zoomed functionality can be provided.

The aforementioned systems, architectures, environments, and the likehave been described with respect to interaction between severalcomponents. It should be appreciated that such systems and componentscan include those components or sub-components specified therein, someof the specified components or sub-components, and/or additionalcomponents. Sub-components could also be implemented as componentscommunicatively coupled to other components rather than included withinparent components. Further yet, one or more components and/orsub-components may be combined into a single component to provideaggregate functionality. Communication between systems, componentsand/or sub-components can be accomplished in accordance with either apush and/or pull model. The components may also interact with one ormore other components not specifically described herein for the sake ofbrevity, but known by those of skill in the art.

Furthermore, various portions of the disclosed systems above and methodsbelow can include or employ of artificial intelligence, machinelearning, or knowledge or rule-based components, sub-components,processes, means, methodologies, or mechanisms (e.g., support vectormachines, neural networks, expert systems, Bayesian belief networks,fuzzy logic, data fusion engines, classifiers . . . ). Such components,inter alia, can automate certain mechanisms or processes performedthereby to make portions of the systems and methods more adaptive aswell as efficient and intelligent. By way of example and not limitation,the focal point component 550 can employ such mechanisms to identify afocal point toward which zooming and/or navigation can be biased.

In view of the exemplary systems described supra, methodologies that maybe implemented in accordance with the disclosed subject matter will bebetter appreciated with reference to the flow charts of FIGS. 6-8. Whilefor purposes of simplicity of explanation, the methodologies are shownand described as a series of blocks, it is to be understood andappreciated that the claimed subject matter is not limited by the orderof the blocks, as some blocks may occur in different orders and/orconcurrently with other blocks from what is depicted and describedherein. Moreover, not all illustrated blocks may be required toimplement the methods described hereinafter.

Referring to FIG. 6, a method 600 of facilitating file exploration isillustrated. At reference numeral 610, receive point of interest, forexample from a pointer positioned above a thumbnail. At numeral 620, ascaled thumbnail is identified as a function of the point of interest,wherein the scaled thumbnail is of the same size of a thumbnail. Inother words, the scaled version of the thumbnail occupies the samedisplay space as an original un-scaled thumbnail. Further, the scaledversion can provide a different view with an unchanged scale. Stateddifferently, an additional scale factor need not be applied but rather adifferent panned view can be identified from a scaled thumbnail. Thescale employed can vary in accordance with one or more factors. Forexample, scaling can be performed automatically as a function of timefor instance (e.g., incremental scaling, predetermined time intervals)and/or upon explicit user instruction (e.g., via use of mouse wheel).Furthermore, scaling can involve one or both of zooming in and zoomingout. At reference numeral 630, the thumbnail is replaced by the scaledthumbnail. Consequently, details are revealed by the scaled thumbnailregarding a corresponding file.

FIG. 7 depicts a method 700 of thumbnail zooming in accordance with oneimplementation. At reference numeral 710, an image, or other graphicobject, is scaled either up or down to make the image larger or smaller,respectively. At numeral 720, the scaled image is positioned behind aclipping mask inversely to a given location. Among other things, thegiven location can be a user specified point of interested, apredetermined focal point, or a hybrid, wherein a user specified pointof interest is altered, or biased, toward the focal point, for example.The clipping mask can be of fixed size corresponding to a particularthumbnail.

FIG. 8 is a flow chart diagram of a method 800 of data modification. Atreference numeral 810, an alteration is acquired with respect to ascaled version of a thumbnail. The alteration can correspond to adding,updating, or deleting data, among other things. At numeral 820,modification of file content is initiated based on acquired alterations.By way of example, suppose a thumbnail represents a spreadsheet file ofnumerous cells (e.g., hundreds, thousands . . . ) corresponding to theintersection of rows and columns. A user can position a pointer over athumbnail and in response be provided with magnified version of thespreadsheet focused on a few cells (e.g., two, three . . . ).Subsequently, a user can, by way of the thumbnail, click and alter thedata in a cell of the spreadsheet without opening the spreadsheet, andthe change can be made in the underlying spreadsheet file.

As used herein, the terms “component” and “system” as well as formsthereof are intended to refer to a computer-related entity, eitherhardware, a combination of hardware and software, software, or softwarein execution. For example, a component may be, but is not limited tobeing, a process running on a processor, a processor, an object, aninstance, an executable, a thread of execution, a program, and/or acomputer. By way of illustration, both an application running on acomputer and the computer can be a component. One or more components mayreside within a process and/or thread of execution and a component maybe localized on one computer and/or distributed between two or morecomputers.

The word “exemplary” or various forms thereof are used herein to meanserving as an example, instance, or illustration. Any aspect or designdescribed herein as “exemplary” is not necessarily to be construed aspreferred or advantageous over other aspects or designs. Furthermore,examples are provided solely for purposes of clarity and understandingand are not meant to limit or restrict the claimed subject matter orrelevant portions of this disclosure in any manner It is to beappreciated a myriad of additional or alternate examples of varyingscope could have been presented, but have been omitted for purposes ofbrevity.

The conjunction “or” as used this description and appended claims in isintended to mean an inclusive “or” rather than an exclusive “or,” unlessotherwise specified or clear from context. In other words, “‘X’ or ‘Y’”is intended to mean any inclusive permutations of “X” and “Y.” Forexample, if “‘A’ employs ‘X,’” “‘A employs ‘Y,’” or “‘A’ employs both‘A’ and ‘B,’” then “‘A’ employs ‘X’ or ‘Y’” is satisfied under any ofthe foregoing instances.

As used herein, the term “inference” or “infer” refers generally to theprocess of reasoning about or inferring states of the system,environment, and/or user from a set of observations as captured viaevents and/or data. Inference can be employed to identify a specificcontext or action, or can generate a probability distribution overstates, for example. The inference can be probabilistic—that is, thecomputation of a probability distribution over states of interest basedon a consideration of data and events. Inference can also refer totechniques employed for composing higher-level events from a set ofevents and/or data. Such inference results in the construction of newevents or actions from a set of observed events and/or stored eventdata, whether or not the events are correlated in close temporalproximity, and whether the events and data come from one or severalevent and data sources. Various classification schemes and/or systems(e.g., support vector machines, neural networks, expert systems,Bayesian belief networks, fuzzy logic, data fusion engines . . . ) canbe employed in connection with performing automatic and/or inferredaction in connection with the claimed subject matter.

Furthermore, to the extent that the terms “includes,” “contains,” “has,”“having” or variations in form thereof are used in either the detaileddescription or the claims, such terms are intended to be inclusive in amanner similar to the term “comprising” as “comprising” is interpretedwhen employed as a transitional word in a claim.

In order to provide a context for the claimed subject matter, FIG. 9 aswell as the following discussion are intended to provide a brief,general description of a suitable environment in which various aspectsof the subject matter can be implemented. The suitable environment,however, is only an example and is not intended to suggest anylimitation as to scope of use or functionality.

While the above disclosed system and methods can be described in thegeneral context of computer-executable instructions of a program thatruns on one or more computers, those skilled in the art will recognizethat aspects can also be implemented in combination with other programmodules or the like. Generally, program modules include routines,programs, components, data structures, among other things that performparticular tasks and/or implement particular abstract data types.Moreover, those skilled in the art will appreciate that the abovesystems and methods can be practiced with various computer systemconfigurations, including single-processor, multi-processor ormulti-core processor computer systems, mini-computing devices, mainframecomputers, as well as personal computers, hand-held computing devices(e.g., personal digital assistant (PDA), phone, watch . . . ),microprocessor-based or programmable consumer or industrial electronics,and the like. Aspects can also be practiced in distributed computingenvironments where tasks are performed by remote processing devices thatare linked through a communications network. However, some, if not allaspects of the claimed subject matter can be practiced on stand-alonecomputers. In a distributed computing environment, program modules maybe located in one or both of local and remote memory storage devices.

With reference to FIG. 9, illustrated is an example general-purposecomputer 910 or computing device (e.g., desktop, laptop, server,hand-held, programmable consumer or industrial electronics, set-top box,game system . . . ). The computer 910 includes one or more processor(s)920, memory 930, system bus 940, mass storage 950, and one or moreinterface components 970. The system bus 940 communicatively couples atleast the above system components. However, it is to be appreciated thatin its simplest form the computer 910 can include one or more processors920 coupled to memory 930 that execute various computer executableactions, instructions, and or components stored in memory 930.

The processor(s) 920 can be implemented with a general purposeprocessor, a digital signal processor (DSP), an application specificintegrated circuit (ASIC), a field programmable gate array (FPGA) orother programmable logic device, discrete gate or transistor logic,discrete hardware components, or any combination thereof designed toperform the functions described herein. A general-purpose processor maybe a microprocessor, but in the alternative, the processor may be anyprocessor, controller, microcontroller, or state machine. Theprocessor(s) 920 may also be implemented as a combination of computingdevices, for example a combination of a DSP and a microprocessor, aplurality of microprocessors, multi-core processors, one or moremicroprocessors in conjunction with a DSP core, or any other suchconfiguration.

The computer 910 can include or otherwise interact with a variety ofcomputer-readable media to facilitate control of the computer 910 toimplement one or more aspects of the claimed subject matter. Thecomputer-readable media can be any available media that can be accessedby the computer 910 and includes volatile and nonvolatile media, andremovable and non-removable media. By way of example, and notlimitation, computer-readable media may comprise computer storage mediaand communication media.

Computer storage media includes volatile and nonvolatile, removable andnon-removable media implemented in any method or technology for storageof information such as computer-readable instructions, data structures,program modules, or other data. Computer storage media includes, but isnot limited to memory devices (e.g., random access memory (RAM),read-only memory (ROM), electrically erasable programmable read-onlymemory (EEPROM) . . . ), magnetic storage devices (e.g., hard disk,floppy disk, cassettes, tape . . . ), optical disks (e.g., compact disk(CD), digital versatile disk (DVD) . . . ), and solid state devices(e.g., solid state drive (SSD), flash memory drive (e.g., card, stick,key drive . . . ) . . . ), or any other medium which can be used tostore the desired information and which can be accessed by the computer910.

Communication media typically embodies computer-readable instructions,data structures, program modules, or other data in a modulated datasignal such as a carrier wave or other transport mechanism and includesany information delivery media. The term “modulated data signal” means asignal that has one or more of its characteristics set or changed insuch a manner as to encode information in the signal. By way of example,and not limitation, communication media includes wired media such as awired network or direct-wired connection, and wireless media such asacoustic, RF, infrared and other wireless media. Combinations of any ofthe above should also be included within the scope of computer-readablemedia.

Memory 930 and mass storage 950 are examples of computer-readablestorage media. Depending on the exact configuration and type ofcomputing device, memory 930 may be volatile (e.g., RAM), non-volatile(e.g., ROM, flash memory . . . ) or some combination of the two. By wayof example, the basic input/output system (BIOS), including basicroutines to transfer information between elements within the computer910, such as during start-up, can be stored in nonvolatile memory, whilevolatile memory can act as external cache memory to facilitateprocessing by the processor(s) 920, among other things.

Mass storage 950 includes removable/non-removable, volatile/non-volatilecomputer storage media for storage of large amounts of data relative tothe memory 930. For example, mass storage 950 includes, but is notlimited to, one or more devices such as a magnetic or optical diskdrive, floppy disk drive, flash memory, solid-state drive, or memorystick.

Memory 930 and mass storage 950 can include, or have stored therein,operating system 960, one or more applications 962, one or more programmodules 964, and data 966. The operating system 960 acts to control andallocate resources of the computer 910. Applications 962 include one orboth of system and application software and can exploit management ofresources by the operating system 960 through program modules 964 anddata 966 stored in memory 930 and/or mass storage 950 to perform one ormore actions. Accordingly, applications 962 can turn a general-purposecomputer 910 into a specialized machine in accordance with the logicprovided thereby.

All or portions of the claimed subject matter can be implemented usingstandard programming and/or engineering techniques to produce software,firmware, hardware, or any combination thereof to control a computer torealize the disclosed functionality. By way of example and notlimitation, the thumbnail interface system 100, or portions thereof, canbe, or form part, of an application 962, and include one or more modules964 and data 966 stored in memory and/or mass storage 950 whosefunctionality can be realized when executed by one or more processor(s)920.

In accordance with one particular embodiment, the processor(s) 920 cancorrespond to a system on a chip (SOC) or like architecture including,or in other words integrating, both hardware and software on a singleintegrated circuit substrate. Here, the processor(s) 920 can include oneor more processors as well as memory at least similar to processor(s)920 and memory 930, among other things. Conventional processors includea minimal amount of hardware and software and rely extensively onexternal hardware and software. By contrast, an SOC implementation ofprocessor is more powerful, as it embeds hardware and software thereinthat enable particular functionality with minimal or no reliance onexternal hardware and software. For example, the thumbnail interfacesystem 100 and/or associated functionality can be embedded withinhardware in a SOC architecture.

The computer 910 also includes one or more interface components 970 thatare communicatively coupled to the system bus 940 and facilitateinteraction with the computer 910. By way of example, the interfacecomponent 970 can be a port (e.g., serial, parallel, PCMCIA, USB,FireWire . . . ) or an interface card (e.g., sound, video . . . ) or thelike. In one example implementation, the interface component 970 can beembodied as a user input/output interface to enable a user to entercommands and information into the computer 910 through one or more inputdevices (e.g., pointing device such as a mouse, trackball, stylus, touchpad, keyboard, microphone, joystick, game pad, satellite dish, scanner,camera, other computer . . . ). In another example implementation, theinterface component 970 can be embodied as an output peripheralinterface to supply output to displays (e.g., CRT, LCD, plasma . . . ),speakers, printers, and/or other computers, among other things. Stillfurther yet, the interface component 970 can be embodied as a networkinterface to enable communication with other computing devices (notshown), such as over a wired or wireless communications link.

What has been described above includes examples of aspects of theclaimed subject matter. It is, of course, not possible to describe everyconceivable combination of components or methodologies for purposes ofdescribing the claimed subject matter, but one of ordinary skill in theart may recognize that many further combinations and permutations of thedisclosed subject matter are possible. Accordingly, the disclosedsubject matter is intended to embrace all such alterations,modifications, and variations that fall within the spirit and scope ofthe appended claims.

1. A method of facilitating file exploration, comprising: employing atleast one processor configured to execute computer-executableinstructions stored in memory to perform the following acts: identifyinga scaled thumbnail of same size as a thumbnail as a function of a pointof interest specified within the thumbnail or another scaled thumbnail.2. The method of claim 1, identifying the scaled thumbnail with adifferent view and unchanged scale.
 3. The method of claim 1 furthercomprises altering the point of interest as a function of apredetermined focal point.
 4. The method of claim 3 comprisesdetermining the focal point based on historically specified points ofinterest.
 5. The method of claim 1 further comprises acquiring analteration with respect to the scaled thumbnail.
 6. The method of claim1 further comprises notifying a program to open a file associated withthe thumbnail in a view corresponding to the scaled thumbnail.
 7. Themethod of claim 1 further comprises replacing the thumbnail with thescaled thumbnail.
 8. The method of claim 7 further comprises replacingthe scaled thumbnail with the thumbnail.
 9. A system that facilitatesfile exploration, comprising: a processor coupled to a memory, theprocessor configured to execute the following computer-executablecomponents stored in the memory: a first component configured to providea scaled thumbnail of same size as a thumbnail based on an identifiedpoint of interest.
 10. The system of claim 9, the first componentdynamically provides incrementally scaled thumbnails automatically as afunction of time.
 11. The system of claim 9, the first componentautomatically provides incrementally scaled thumbnails at anincreasingly slower rate.
 12. The system of claim 9 further comprises asecond component configured to accept a change with respect tounderlying content represented by the scaled thumbnail.
 13. The systemof claim 9 further comprises a second component configured to initiateloading of a file associated with the scaled thumbnail with a view thatmatches the scaled thumbnail.
 14. The system of claim 9 furthercomprises a second component configured to alter the point of interestas a function of a predetermined focal point.
 15. The system of claim 9,the first component is configured to replace the thumbnail with thescaled thumbnail upon detecting a pointer over the thumbnail.
 16. Acomputer-readable storage medium having instructions stored thereon thatenables at least one processor to perform the following acts: replacinga thumbnail with a scaled thumbnail of same size as the thumbnail basedon an identified point of interest.
 17. The computer-readable storagemedium of claim 16, replacing the thumbnail automatically withincrementally scaled thumbnails at predetermined time intervals.
 18. Thecomputer-readable storage medium of claim 17 further comprises replacingthe thumbnail at increasingly longer time intervals as the scaledthumbnails scale up incrementally.
 19. The computer-readable storagemedium of claim 16 further comprises initiating modification of contentidentified by the scaled thumbnail based on interaction with the scaledthumbnail.
 20. The computer-readable storage medium of claim 16 furthercomprises altering the point of interest as a function of apredetermined focal point.